package com.apolo.entidades;

import java.util.LinkedList;
import java.util.List;
import java.util.Collection;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.ListIterator;

/**
 * 
 * @author armando
 */


public class Pessoa {
    private int codigo;
	private String nome;
	private String email;
	private String endereco;
	private String telefone;
	private String sexo;
	private String RG;
	private String CPF;
	private String nomeMae;
	private List<Tarefa> listaTarefas;
	
	public Pessoa(){
	}
	
	/**
	 * Ao instanciar a Classe Pessoa, ja faz a inicializacao dos valores
	 * @param nome Nome da Pessoa
	 * @param email E-mail da Pessoa
	 * @param endereco Endereco da Pessoa
	 */
	public Pessoa(String nome, String email, String endereco, String sexo) {
		this.nome = nome;
		this.email = email;
		this.endereco = endereco;
		this.telefone = "0000-0000";
		this.sexo = sexo;
		this.listaTarefas = new LinkedList<Tarefa>();
	}
	
	public void addTarefa(Tarefa t){
		this.listaTarefas.add(t);
		t.setPessoa(this);
	}
	

	/**
	 * 
	 * @return Nome da Pessoa
	 */
	public String getNome() {
		return nome;
	}

	/**
	 * 
	 * @param nome Atribui Nome a Pessoa
	 */
	public void setNome(String nome) {
		this.nome = nome;
	}

	/**
	 * 
	 * @return Codigo da Pessoa corrente
	 */
    public int getCodigo(){
    	return this.codigo;
    }
    
    /**
     * 
     * @param codigo Codigo da Pessoa
     */
    public void setCodigo(int codigo){
            this.codigo = codigo;
        }
       
    /**
     * 
     * @return E-mail da Pessoa
     */
	public String getEmail() {
		return email;
	}

	/**
	 * 
	 * @param email Atribui um e-mail a Pessoa
	 */
	public void setEmail(String email) {
		this.email = email;
	}

	/**
	 * 
	 * @return Endereco Endereco da Pessoa
	 */
	public String getEndereco() {
		return endereco;
	}

	/**
	 * 
	 * @param endereco Atribui Endereco a Pessoa
	 */
	public void setEndereco(String endereco) {
		this.endereco = endereco;
	}

	/**
	 * 
	 * @return Telefone de pessoa no formato XXXX-XXXX
	 */
	public String getFone() {
		return telefone;
	}

	/**
	 * 
	 * @param fone Atribui Telefone a Pessoa
	 */
	public void setFone(String fone) {
		this.telefone = fone;
	}

	public String getSexo() {
		return sexo;
	}

	public void setSexo(String sexo) {
		this.sexo = sexo;
	}
}